#!/bin/bash
#
# /etc/sysconfig/network-scripts/ifup-ctc
#
# the ctc network driver is a point-to-point driver on S/390 machines
#
# To get the ctc module to load automatically at boot, you will need to
# add the following line to /etc/modprobe.conf:
#
# alias ctc0 ctc
#

cd /etc/sysconfig/network-scripts
. ./network-functions

. /etc/sysconfig/network

CONFIG=$1
[ -f "$CONFIG" ] || CONFIG=ifcfg-$CONFIG
source_config

if [ "$2" = "boot" -a "${ONBOOT}" = "no" ] ; then
    exit
fi
[ -n "${MTU}" ] && ip link set dev ${DEVICE} mtu ${MTU}

[ -z "$PREFIX" ] && eval $(/bin/ipcalc --prefix ${IPADDR} ${NETMASK})
ip addr add ${IPADDR} peer ${GATEWAY}/${PREFIX} dev ${DEVICE}
set_link_up ${DEVICE}
# Wait for the device to come up - the chandev'ified ctc driver can take
# quite a while...
timeout=0
while ! ping -w 30 -c 1 ${GATEWAY} &>/dev/null; do
    timeout=$(($timeout + 1))
    if [ $timeout = 20 ]; then
        net_log $"ERROR: ${DEVICE} did not come up!"
        break
    fi
done

if [ "${NETWORK}" != "" ] ; then
    ip route add to ${GATEWAY} metric 1 dev ${DEVICE}
fi

if [ "${GATEWAY}" != "" ]; then
    if [ "${GATEWAYDEV}" = "" -o "${GATEWAYDEV}" = "${DEVICE}" ]; then
        # set up default gateway
        ip route replace default ${METRIC:+metric $METRIC} via ${GATEWAY}
    fi
fi

/etc/sysconfig/network-scripts/ifup-post $1
